package com.application.model.universidades.quevasaestudiar.retrieve;

import com.application.model.RetrivierWeb;
import com.application.model.universidades.quevasaestudiar.database.UniversidadDB;
import com.application.model.universidades.quevasaestudiar.entries.UniversidadElement;
import com.application.model.universidades.quevasaestudiar.manager.ManagerBusqueda;
import com.application.model.universidades.quevasaestudiar.manager.ManagerQueVasEntity;
import com.application.model.universidades.universidadesorg.database.UniversidadesOrgDB;
import com.application.model.universidades.universidadesorg.entries.UniversidadesOrgElement;
import com.application.model.universidades.universidadesorg.manager.ManagerUniversidadesOrg;

/**
 * Captura la informacion de la pagina:
 * http://www.universidades.org/
 * @author jhonny
 */
public class Retrieve extends RetrivierWeb {


    private ManagerBusqueda				managerBusqueda;
    private ManagerQueVasEntity			managerQueVasEntity;
	
    public Retrieve() {
    	managerQueVasEntity = new ManagerQueVasEntity();
    	managerBusqueda = new ManagerBusqueda(managerQueVasEntity);
    	
    }

    @Override
    public void retrieve() {
        String url = "";
        
        for (int i = 1; i < 969; i++) {
        	url = "http://www.quevasaestudiar.com/estudiar-busqueda-en-Argentina-sistema-Indistinto-nivel-Indistinto-forma-Indistinta-area-Todas-duracion-Indistinta-"+i+"-3869-3869-1338-similar-0.htm";
        	managerBusqueda.retrivie(url,"","<!-- inicio titulo_uni -->",">Otras búsquedas de la misma área de interés<","utf-8");
		}
        saveFile();
    }
    public void saveFile(){
    	managerQueVasEntity.save();
    }
    @Override
    public void processContent(String data, String parentName) {
    }
    	public void saveDataInDataBase() {
		try{
			this.managerQueVasEntity.load();
			UniversidadDB database = new UniversidadDB(this); 
			if(!managerQueVasEntity.getValues().isEmpty()){
				for (UniversidadElement item : managerQueVasEntity.getValues()) {
					database.save(item);
				}
				saveFile();
			}
		}catch (Exception e) {
			logger.error(e);
		}
		
	}

 }
